home *** CD-ROM | disk | FTP | other *** search
-
- Routing over Large Clouds Working Group Juha Heinanen
- INTERNET DRAFT (Telecom Finland)
- Expires Apr 15, 1994 Ramesh Govindan
- <draft-ietf-rolc-nhrp-00.txt> (Bellcore)
- October 15, 1993
-
-
- NBMA Next Hop Resolution Protocol (NHRP)
-
-
- Status of this Memo
-
- This document is an Internet Draft. Internet Drafts are working
- documents of the Internet Engineering Task Force (IETF), its Areas,
- and its Working Groups. Note that other groups may also distribute
- working documents as Internet Drafts.
-
- Internet Drafts are draft documents valid for a maximum of six
- months. Internet Drafts may be updated, replaced, or obsoleted by
- other documents at any time. It is not appropriate to use Internet
- Drafts as reference material or to cite them other than as a
- ``working draft'' or ``work in progress.'' Please check the 1id-
- abstracts.txt listing contained in the internet-drafts Shadow
- Directories on nic.ddn.mil, nnsc.nsf.net, nic.nordu.net,
- ftp.nisc.sri.com, or munnari.oz.au to learn the current status of any
- Internet Draft.
-
- Abstract
-
- This document describes the NBMA Next Hop Resolution Protocol (NHRP).
- NHRP can be used by a source terminal (host or router) connected to a
- Non-Broadcast, Multi-Access link layer (NBMA) network to find out the
- IP and NBMA addresses of the "NBMA next hop" towards a destination
- terminal. The NBMA next hop is the destination terminal itself, if
- the destination is connected to the NBMA network. Otherwise, it is
- the egress router from the NBMA network that is "nearest" to the
- destination terminal. Although this document focuses on NHRP in the
- context of IP, the technique is applicable to other network layer
- protocols as well.
-
- 1. Introduction
-
- The NBMA Next Hop Resolution Protocol (NHRP) allows a source terminal
- (a host or router), wishing to communicate over a Non-Broadcast,
- Multi-Access link layer (NBMA) network, to find out the IP and NBMA
- addresses of the "NBMA next hop" towards a destination terminal. The
- NBMA next hop is the destination terminal itself, if the destination
- is connected to the NBMA network. Otherwise, it is the egress router
-
-
-
- Heinanen & Govindan Expires April 15, 1994 [Page 1]
-
- INTERNET DRAFT NBMA NHRP October 15, 1993
-
-
- (out of the NBMA network) nearest to the destination terminal.
-
- Conventional hop-by-hop IP routing may not be sufficient to resolve
- the "NBMA next hop" towards the destination terminal. An NBMA
- network may, in general, consist of multiple logically independent IP
- subnets (LISs, [3]); IP routing would only resolve the next hop LIS
- towards the destination terminal.
-
- Once the NBMA next hop has been resolved, the source may either start
- sending IP packets to the destination (in a connectionless NBMA
- network such as SMDS) or may first establish a connection to the
- destination with the desired bandwidth and QOS characteristics (in a
- connection oriented NBMA network such as ATM).
-
- An NBMA network can be non-broadcast either because it technically
- doesn't support broadcasting (e.g. an X.25 network) or because
- broadcasting is not feasible for one reason or another (e.g. an SMDS
- broadcast group or an extended Ethernet would be too large).
-
- 2. Protocol Overview
-
- In this section, we briefly describe how a source S uses NHRP to
- determine the "NBMA next hop" to destination D. S first determines
- the next hop to D through normal routing processes. If this next hop
- is reachable through its NBMA interface, S formulates an NHRP request
- containing the source and destination IP addresses and QOS
- information. S then forwards the request to an entity called the
- "Next Hop Server" (NHS).
-
- For administrative and policy reasons, a physical NBMA network may be
- partitioned into several disjoint logical NBMA networks (discussed
- later in this section); NHSs cooperatively resolve the NBMA next hop
- within their logical NBMA network. Unless otherwise specified, we use
- NBMA network to mean logical NBMA network.
-
- Each NHS "serves" a pre-configured set of terminals and peers with a
- pre-configured set of NHSs, which all belong to the same NBMA
- network. An NHS exchanges routing information with its peers (and
- possibly with the terminals it serves) using regular routing
- protocols. (However, an NHS, unless it is also an egress/ingress
- router, need not necessarily be able to switch regular IP packets).
- This exchange is used to construct a forwarding table per QOS in
- every NHS. The forwarding table determines the next hop NHS towards
- the NHRP request's destination. This next hop NHS may depend on the
- request's QOS information.
-
- After receiving an NHRP request, the NHS checks if it "serves" D. If
- so, the NHS resolves D's NBMA address, using mechanisms beyond the
-
-
-
- Heinanen & Govindan Expires April 15, 1994 [Page 2]
-
- INTERNET DRAFT NBMA NHRP October 15, 1993
-
-
- scope of this document (examples of such mechanisms include ARP [1,
- 2] and pre-configured tables). The NHS then either forwards the NHRP
- request to D or generates a positive NHRP reply on its behalf. The
- reply contains D's (D is S's NBMA next hop) IP and NBMA address and
- is sent back to S. NHRP replies usually traverse the same sequence
- of NHSs as the NHRP request (in reverse order, of course).
-
- If the NHS does not serve D, it extracts from its forwarding table
- the next hop towards D. If no such next hop entry is found, the NHS
- generates a negative NHRP reply.
-
- If the next hop is behind the NHS's NBMA interface, the NHS forwards
- the NHRP request to the next hop. If the next hop is behind some
- other interface, the NHS may be willing to act as an egress router
- for traffic bound to D. In that case, the NHS generates a positive
- NHRP reply containing its own IP and NBMA address (i.e., the NHS is
- the NBMA next hop from S to D).
-
- An NHS receiving an NHRP reply may cache the NBMA next hop
- information contained therein. To a subsequent NHRP request, this
- NHS might respond with the cached, non-authoritative, NBMA next hop
- or with cached negative information. If a communication attempt based
- on non-authoritative information fails, a source terminal can choose
- to send an authoritative NHRP request. NHSs never respond to
- authoritative NHRP requests with cached information.
-
- NHRP requests and replies never cross the borders of a logical NBMA
- network. Thus, IP traffic out of and into a logical NBMA network
- always traverses an IP router at its border. Network layer filtering
- can then be implemented at these border routers.
-
- NHRP provides a mechanism to aggregate NBMA next hop information in
- NHS caches. Suppose that NHS X is the NBMA next hop from S to D.
- Suppose further that X is an egress router for all terminals sharing
- an IP address prefix with D. When X generates an NHRP reply in
- response to a request, it may replace the IP address of D with this
- prefix. The prefix to egress router mapping in the reply is cached
- in all NHSs on the path of the reply. A subsequent (non-
- authoritative) NHRP request for some destination that shares an IP
- address prefix with D can be satisfied with this cached information.
-
- To dynamically detect link-layer filtering in NBMA networks, NHRP
- incorporates a "Route record" in replies. This Route record contains
- the network and link layer addresses of intermediate NHSs willing to
- route packets from the source to the destination prefix. When a
- source terminal is unable to open a connection to the responder, it
- attempts to do so successively with one of the NHSs in the Route
- record until it succeeds. This approach finds the optimal best hop in
-
-
-
- Heinanen & Govindan Expires April 15, 1994 [Page 3]
-
- INTERNET DRAFT NBMA NHRP October 15, 1993
-
-
- the presence of link-layer filtering.
-
- 3. Configuration
-
- Terminals
-
- To participate in NHRP, a terminal connected to an NBMA network
- should to be configured with the IP address(es) of its NHS(s).
- These NHS(s) may be physically located on the terminal's default or
- peer routers, so their addresses may be obtained from the
- terminal's IP forwarding table. If the terminal is attached to
- several link layer networks (including logical NBMA networks), it
- should also be configured to receive routing information from its
- NHS(s) and peer routers so that the terminal can determine which IP
- networks are reachable through which link layer networks.
-
- Next Hop Servers
-
- An NHS is configured with a set of IP address prefixes that
- correspond to the IP addresses of the terminals it is serving.
- Moreover, the NHS must be configured to exchange routing
- information with its peer NHSs (if any). If a served terminal is
- attached to several link layer networks, the NHS may also need to
- be configured to advertize routing information to such terminals.
-
- If an NHS is acting as an egress router for terminals connected to
- other link layer networks than the NBMA network, the NHS must, in
- addition to the above, be configured to exchange routing
- information between the NBMA network and these other link layer
- networks.
-
- In all cases, routing information is exchanged using regular
- intra-domain and/or inter-domain routing protocols.
-
- 4. Packet Formats
-
- NHRP requests and replies are carried as ICMP messages. This section
- describes the packet formats of NHRP requests and replies:
-
- NHRP Request
-
-
-
-
-
-
-
-
-
-
-
- Heinanen & Govindan Expires April 15, 1994 [Page 4]
-
- INTERNET DRAFT NBMA NHRP October 15, 1993
-
-
- 0 1 2 3
- 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | Type | Code | Checksum |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | Hop Count | Unused |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | Destination IP address |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | Source IP address |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
-
- Type
- 19
-
- Code
- A response to an NHRP request may contain cached information. If an
- authoritative answer is desired, then code 2 (NHRP request for
- authoritative information) should be used. Otherwise, a code value of 1
- (NHRP request) should be used.
-
- Hop Count
- The Hop count indicates the maximum number of NHSs that a request
- or reply is allowed to traverse before being discarded.
-
- Source and Destination IP Addresses
- Respectively, these are the IP addresses of the NHRP request
- initiator and the terminal for which the NBMA next hop is desired.
-
- NHRP Reply
-
- 0 1 2 3
- 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | Type | Code | Checksum |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | Hop Count | Unused | Route record length |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | Source IP address |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | Destination IP address |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | Destination mask |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | |
- | NHRP route record (variable) |
- | |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
-
-
-
- Heinanen & Govindan Expires April 15, 1994 [Page 5]
-
- INTERNET DRAFT NBMA NHRP October 15, 1993
-
-
- Type
- 20
-
- Code
- NHRP replies may be positive or negative. An NHRP positive,
- non-authoritative reply carries a code of 1, while a positive,
- authoritative reply carries a code of 2. An NHRP negative,
- non-authoritative reply carries a code of 3 and a negative,
- authoritative reply carries a code of 4. An NHS is not allowed to
- reply to an NHRP request for authoritative information with cached
- information, but may do so for an NHRP Request.
-
- Route Record Length
- The length in words of the NHRP route record (see below).
-
- Source IP Address
- The address of the initiator of the corresponding NHRP request.
-
- Destination IP Address and Mask
- If the NHRP Request's destination is on the NBMA, the reply contains
- that destination address and a mask of all 1s. Otherwise, the
- responder may choose to act as the egress router for all terminals in
- the destination's subnet. If so, the reply contains a prefix of the
- requested destination IP address and the corresponding mask.
-
- NHRP Route Record
- The NHRP route record is a list of NHRP "Route elements" for NHSs on
- the path of a positive NHRP reply. Only NHSs that are willing to act
- as egress routers for packets from the source to the destination insert
- a Route element in the NHRP reply. Negative replies do not carry
- Route elements.
-
- The first Route element is always that of the destination terminal or,
- if the destination is not directly attached to the NBMA, that of the
- responding egress router. Each Route element is formatted as follows:
-
- 0 1 2 3
- 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | IP address |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
- | LL length | Link Layer (LL) address |
- +-+-+-+-+-+-+-+-+-+ |
- | (variable length) |
- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
-
- The LL length field is the length of the link layer address in
- bits. The LL address itself is zero-filled to the nearest 32-bit
-
-
-
- Heinanen & Govindan Expires April 15, 1994 [Page 6]
-
- INTERNET DRAFT NBMA NHRP October 15, 1993
-
-
- boundary.
-
- On the reply path, an NHS willing to route packets from source to
- the destination prefix should append its Route element to the
- current Route Record, adjust the Route record length appropriately,
- and recompute the ICMP checksum. The Route record is used to
- discover link layer filters, as described in Section 2.
-
- If the first Route element's IP address and the destination's IP
- address differ, the source terminal may assume that the reply was
- generated by an egress router.
-
- An NHS may cache replies containing a Route record. Subsequently,
- when it responds to an NHRP request with the cached reply,
- intermediate NHSs on the path to the initiator may attach Route
- elements to the reply.
-
- 5. Protocol Operation
-
- The external behavior of an NHS may be described in terms of two
- procedures (processRequest and processReply) operating on two tables
- (forwardingTable and cacheTable). In an actual implementation, the
- code and data structures may be realized differently.
-
- Each NHS has for each supported QOS an NHRP forwardingTable
- consisting of entries with the fields:
-
- <networkLayerAddrPrefix, type, outIf, outIfAddr>
-
- In case the NHS is also a host or serving as a router, the NHRP
- forwarding table may be integrated with the normal IP forwarding
- table of the NHS.
-
- The networkLayerAddrPrefix field identifies a set of network layer
- addresses known to the NHS. It consists of two subfields <ipAddr,
- mask>.
-
- The type field indicates the type of the networkLayerAddrPrefix. The
- possible values are:
-
- - locallyServed: The NHS is itself serving the
- networkLayerAddrPrefix. The outIf field denotes the NBMA interface
- via which the served terminals can be reached and the outIfAddr
- field has no meaning. Such a forwardingTable entry has been
- created by manual configuration.
-
- - nhsLearned: The NHS has learned about the networkLayerAddrPrefix
- from another NHS. The outIf and outIfAddr fields, respectively,
-
-
-
- Heinanen & Govindan Expires April 15, 1994 [Page 7]
-
- INTERNET DRAFT NBMA NHRP October 15, 1993
-
-
- denote the NBMA interface and IP address of this next hop NHS.
- Such a forwardingTable entry is a result of network layer address
- prefix information exchange with one of the NHS's peers.
-
- - externallyLearned: The NHS has learned about the
- networkLayerAddrPrefix via normal IP routing from outside of the
- NBMA network. In this case, the NHS may act as an egress router
- for the terminals sharing the networkLayerAddrPrefix. The outIf and
- outIfAddr fields, respectively, denote the interface and IP address
- of the next hop router. If the outIfAddr field is empty, the
- networkLayerAddrPrefix is assumed to be directly connected to the
- outIf of the NHS.
-
- The protocol used to exchange networkLayerAddrPrefix information
- among the NHSs or between NHSs and their peer routers can be any
- regular IP intra-domain or inter-domain routing protocol.
-
- In addition to the forwardingTable, each NHS has for each supported
- QOS an NHRP cacheTable consisting of entries with the fields:
-
- <networkLayerAddrPrefix, routeElementList>
-
- The entries in the cacheTable are learned from NHRP replies
- traversing the NHS. The networkLayerAddrPrefix field identifies a set
- of IP addresses sharing a common Route record. The
- networkLayerAddrPrefix field consists of two subfields <ipAddr,
- mask>. The routeElementList field is either empty (in case of a
- negative cache entry) or consists of a list of subfields of the form
- <ipAddr, nbmaAddr>.
-
- The cacheTable entries could also include a timeStamp field to be
- used to age cacheTable entries after a certain hold period.
-
- The following pseudocode defines how NBMA NHRP requests and replies
- are processed by an NHS.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Heinanen & Govindan Expires April 15, 1994 [Page 8]
-
- INTERNET DRAFT NBMA NHRP October 15, 1993
-
-
- procedure processRequest(request);
- let bestMatch == matchForwardingTable(request.dIPa) do
- if bestMatch then
- if bestMatch.type == locallyServed then
- let nbmaAddr == arp(request.dIPa) do
- if nbmaAddr then
- genPosAuthReply(request.sIPa,
- request.dIPa, 0xFFFFFFFF,
- request.dIPa, nbmaAddr)
- else
- genNegAuthReply(request.sIPa, request.dIPa)
- end
- end
- elseif bestMatch.type == nhsLearned then
- if not requestForAuthInfo?(request) then
- let cacheMatch == matchCacheTable(request.dIPa) do
- if cacheMatch then
- if cacheMatch.routeElementList == EMPTY then
- genNegNonAuthReply(request.sIPa, request.dIPa)
- else
- genPosNonAuthReply(request.sIPa,
- cacheMatch.networkLayerAddrPrefix.ipAddr,
- cacheMatch.networkLayerAddrPrefix.mask,
- cacheMatch.routeElementList);
- end
- else /* no cache match */
- forwardRequest(request, bestMatch.OutIf,
- bestMatch.OutIfAddr)
- end
- end
- else /* request for authoritative information */
- forwardRequest(request, bestMatch.OutIf,
- bestMatch.OutIfAddr)
- end
- else /* bestMatch.type == externallyLearned */
- genPosAuthReply(request.sIPa,
- bestMatch.networkLayerAddrPrefix.ipAddr,
- bestMatch.networkLayerAddrPrefix.mask,
- selfIpAddr, selfNbmaAddr)
- end
- else /* no match in forwardingTable */
- genNegAuthReply(request.sIPa, request.dIPa)
- end
- end
- end
-
-
-
-
-
-
- Heinanen & Govindan Expires April 15, 1994 [Page 9]
-
- INTERNET DRAFT NBMA NHRP October 15, 1993
-
-
- procedure processReply(reply);
- addCacheTableEntry(reply.dIPa, reply.dm, reply.routeRecord);
- if reply.sIPa == selfIpAddr then
- /* reply is to the NHS itself */
- else
- let bestMatch == matchForwardingTable(reply.sIPa) do
- if bestMatch then
- if bestMatch.type != externallyLearned then
- forwardReply(reply, bestMatch.outIf, bestMatch.outIfAddr)
- else /* bestMatch.type == externallyLearned */
- /* request should never originate outside of the NBMA */
- end
- end
- end
- end
- end
-
- The semantics of the procedures and constants used in the pseudocode
- are explained below.
-
- matchForwardingTable(ipAddress) returns the forwardingTable entry
- whose networkLayerAddrPrefix field is the longest match for ipAddress
- or FALSE if no match is found.
-
- arp(ipAddress) resolves the NBMA address corresponding to ipAddress.
- It returns FALSE if the resolution fails.
-
- genPosAuthReply(sourceIpAddr, destinationIpAddr, destinationMask,
- originatorIpAddr, originatorNbmaAddr) generates a positive,
- authoritative reply with sourceIpAddr, destinationIpAddr, and
- destinationMask in Source IP address, Destination IP address and
- Destination mask fields, respectively. The Route record field of the
- reply consists of one Route element that contains originatorIpAddr
- and originatorNbmaAddr as its IP and Link layer addresses.
-
- genNegAuthReply(sourceIpAddr, destinationIpAddr) and
- genNegNonAuthReply(sourceIpAddr, destinationIpAddr) respectively
- generate a negative, authoritative and non-authoritative reply with
- sourceIpAddr and destinationIpAddr in Source IP address and
- Destination IP address fields. The Destination mask field has always
- value 0xFFFFFFFF and the route Record field is empty.
-
- selfIpAddr and selfNbmaAddr denote the egress router's own IP and
- NBMA addresses in the NBMA via which its peer NHSs can be reached.
-
- requestForAuthInfo?(request) tests if request is a Request for
- authoritative information.
-
-
-
-
- Heinanen & Govindan Expires April 15, 1994 [Page 10]
-
- INTERNET DRAFT NBMA NHRP October 15, 1993
-
-
- matchCacheTable(ipAddr) returns a cacheTable entry whose
- networkLayerAddr field is the best match for ipAddr or FALSE if no
- match is found.
-
- genPosNonAuthReply(sourceIpAddr, destinationIpAddr, destinationMask,
- routeElementList) generates a positive, non-authoritative reply with
- sourceIpAddr, destinationIpAddr, and destinationMask in Source IP
- address, Destination IP address and Destination mask fields,
- respectively. The Route record field of the reply is constructed
- from routeElementList.
-
- forwardRequest(request, interface, ipAddr) decrements the Hop count
- field of request, recomputes the ICMP Checksum field, and forwards
- request to ipAddr of interface provided that the value of the Hop
- count field remains positive.
-
- addCacheTableEntry(ipAddr, mask, routeRecord) adds a new entry to the
- cacheTable or overwrites an existing entry whose
- networkLayerAddrPrefix field is equal to <ipAddr, mask>. A new entry
- is not added if matchCacheTable(ipAddr) returns an entry whose
- routeElementList is equivalent to routeRecord. The
- networkLayerAddrPrefix field of the new entry is <ipAddr, mask>. The
- routeElementList field is constructed from routeRecord. In addition,
- if the NHS processing the reply would be willing to serve as an
- egress router for <ipAddr, mask>, it should add a new Route element
- <selfIpAddr, selfNbmaAddr> to the end of the routeElementList field.
-
- forwardReply(reply, interface, ipAddr) decrements the Hop count field
- of request, recomputes the ICMP Checksum field, and forwards request
- to ipAddr of interface provided that the value of the Hop count field
- remains positive. If the NHS processing the reply would be willing
- to serve as an egress router for <reply.dIPa, reply.mask>, it should,
- before recomputing the Checksum field, add a new Route element
- <selfIpAddr, selfNbmaAddr> to the end of reply.routeRecord.
-
-
- An NBMA terminal has, for each supported QOS, a forwardingTable and
- one or more cacheTables. The former can be the terminal's IP
- forwarding table and is either manually configured or filled via
- routing information exchange with the terminal's NHSs or peer
- routers. There is one cacheTable per connected NBMA network. If the
- terminal's forwardingTable shows that a particular destination is
- behind an NBMA network, the terminal first consults the corresponding
- cacheTable. If no match is found, it generates an NHRP request to
- the NHS pointed to by the forwardingTable entry. When the reply
- arrives, the terminal updates the appropriate cacheTable in the same
- way as an NHS does.
-
-
-
-
- Heinanen & Govindan Expires April 15, 1994 [Page 11]
-
- INTERNET DRAFT NBMA NHRP October 15, 1993
-
-
- 6. Discussion
-
- The result of an NHRP request depends on how routing is configured
- among the NHSs of an NBMA network. If the destination terminal is
- directly connected to the NBMA network and the NHSs always prefer
- NBMA routes over routes via other link layer networks, the NHRP
- replies always return the NBMA address of the destination terminal
- itself rather than the NBMA address of some egress router. For
- destinations outside the NBMA network, egress routers and routers in
- the other link layer networks should exchange routing information so
- that the optimal egress router is always found.
-
- When the NBMA next hop towards a destination is not the destination
- terminal itself, the optimal NBMA next hop may change dynamically.
- This can happen, for instance, when an egress router nearer to the
- destination becomes available. To detect this change, a source
- terminal can periodically reissue the NHRP request. Alternatively,
- the source can be configured to receive routing information from its
- NHSs. When it detects an improvement in the route to the
- destination, the source can reissue the NHRP request to obtain the
- current optimal NBMA next hop.
-
- In addition to NHSs, an NBMA terminal could also be associated with
- one or more regular routers that could act as "connectionless
- servers" for the terminal. Then the terminal could choose to resolve
- the NBMA next hop or just send the IP packets to one of the
- terminal's connectionless servers. The latter option may be
- desirable if communication with the destination is short-lived and/or
- doesn't require much network resources. The connectionless servers
- could, of course, be physically integrated in the NHSs by augmenting
- them with IP switching functionality.
-
- NHRP supports portability of NBMA terminals. A terminal can be moved
- anywhere within the NBMA network and still keep its original IP
- address as long as its NHS(s) remain the same. Requests for
- authoritative information will always return the correct link layer
- address.
-
- References
-
- [1] Address Resolution Protocol, David C. Plummer, RFC 826.
-
- [2] Classical IP and ARP over ATM, Mark Laubach, Internet Draft.
-
- [3] Transmission of IP datagrams over the SMDS service, J. Lawrence
- and
- D. Piscitello, RFC 1209.
-
-
-
-
- Heinanen & Govindan Expires April 15, 1994 [Page 12]
-
- INTERNET DRAFT NBMA NHRP October 15, 1993
-
-
- Acknowledgements
-
- We would like to thank John Burnett of Adaptive, Dennis Ferguson of
- ANS, Joel Halpern of Network Systems, and Paul Francis of Bellcore
- for their valuable insight and comments to earlier versions of this
- draft.
-
- Authors' Addresses
-
- Juha Heinanen Ramesh Govindan
- Telecom Finland, Bell Communications Research
- PO Box 228, MRE 2P-341, 445 South Street
- SF-33101 Tampere, Morristown, NJ 07960
- Finland
-
- Phone: +358 49 500 958 Phone: +1 201 829 4406
- Email: Juha.Heinanen@datanet.tele.fi Email: rxg@thumper.bellcore.com
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Heinanen & Govindan Expires April 15, 1994 [Page 13]
-
-